﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CRUD.InterfaceDAO;
using GestionadorBaseDatos;

namespace CapaNegocios
{
    /// <summary>
    /// interfaz que define el comportamiento del mantenimiento de un pago
    /// </summary>
    public interface IGestionMantenimientoPago
    {
        /// <summary>
        /// Metodo que permite insertar un nuevo mantenimiento de un pago
        /// </summary>
        /// <param name="mantenPago">Recibe como parametro un objeto de tipo MantenimientoPago</param>
        void InsertarMantenimientoPago(MantenimientoPago mantenPago);

        /// <summary>
        /// Metodo que permite obtener todos los mantenimientos de todos los pagos.
        /// </summary>
        /// <returns>Retorna una lista de objetos de tipo MantenimientoPago</returns>
        List<MantenimientoPago> ObtenerMantenimientoPagos();

        /// <summary>
        /// Metodo que permite todos los mantenimientos de las pagos de un usuario en especifico
        /// </summary>
        /// <param name="usuario">Recibe como parametro un objeto de tipo Usuario</param>
        /// <returns>Retorna una lista de objetos de tipo MantenimientoPago</returns>
        List<MantenimientoPago> ObtenerMantenimientosPagoPorUsuario(Usuario usuario);

     }
}
